home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 May: Tool Chest / Developer CD Series May 1996 (Tool Chest) (Apple Computer) (1996).iso / Tool Chest / Development Tools & Languages / Macintosh Common Lisp Related / User Contributions / Misc.sea / Misc / numb-o-rama.lisp < prev    next >
MacBinary  |  1992-03-02  |  10.9 KB  |  [TEXT/CCL2]

open in: MacOS 8.1     |     Win98     |     DOS

browse contents    |     view JSON data     |     view as text


This file was processed as: MacBinary (archive/macBinary).

ConfidenceProgramDetectionMatch TypeSupport
10% dexvert MacBinary (archive/macBinary) fallback Supported
1% dexvert Text File (text/txt) fallback Supported
100% file MacBinary II, inited, Mon Mar 2 14:28:59 1992, modified Mon Mar 2 14:28:59 1992, creator Common Lisp 2, type ASCII, 10465 bytes "numb-o-rama.lisp" , at 0x2961 456 bytes resource default (weak)
99% file data default
74% TrID Macintosh plain text (MacBinary) default
25% TrID MacBinary 2 default (weak)
100% siegfried fmt/1762 MacBinary (II) default
100% lsar MacBinary default


id metadata
keyvalue
macFileType[TEXT]
macFileCreator[CCL2]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 10 6e 75 6d 62 2d 6f | 2d 72 61 6d 61 2e 6c 69 |..numb-o|-rama.li|
|00000010| 73 70 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |sp......|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 43 43 4c | 32 01 00 00 00 00 00 00 |.TEXTCCL|2.......|
|00000050| 00 00 00 00 00 28 e1 00 | 00 01 c8 a5 d8 32 7b a5 |.....(..|.....2{.|
|00000060| d8 32 7b 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.2{.....|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 8d ad 00 00 |........|........|
|00000080| 3b 3b 3b 3b 6e 75 6d 62 | 2d 6f 2d 72 61 6d 61 0d |;;;;numb|-o-rama.|
|00000090| 3b 3b 3b 3b a9 20 4d 43 | 4d 58 43 49 49 20 4e 6f |;;;;. MC|MXCII No|
|000000a0| 72 74 68 77 65 73 74 65 | 72 6e 20 55 6e 69 76 65 |rthweste|rn Unive|
|000000b0| 72 73 69 74 79 20 49 6e | 73 74 69 74 75 74 65 20 |rsity In|stitute |
|000000c0| 66 6f 72 20 74 68 65 20 | 4c 65 61 72 6e 69 6e 67 |for the |Learning|
|000000d0| 20 53 63 69 65 6e 63 65 | 73 0d 3b 3b 3b 3b 52 69 | Science|s.;;;;Ri|
|000000e0| 63 68 61 72 64 20 4c 79 | 6e 63 68 0d 3b 3b 3b 3b |chard Ly|nch.;;;;|
|000000f0| 6c 79 6e 63 68 40 69 6c | 73 2e 6e 77 75 2e 65 64 |lynch@il|s.nwu.ed|
|00000100| 75 0d 3b 3b 3b 3b 0d 3b | 3b 3b 3b 54 68 69 73 20 |u.;;;;.;|;;;This |
|00000110| 63 6f 64 65 20 69 73 20 | 70 72 6f 76 69 64 65 64 |code is |provided|
|00000120| 20 66 72 65 65 20 6f 66 | 20 63 68 61 72 67 65 2e | free of| charge.|
|00000130| 20 20 4e 6f 20 77 61 72 | 72 61 6e 74 79 2c 20 65 | No war|ranty, e|
|00000140| 78 70 72 65 73 73 20 6f | 72 20 69 6d 70 6c 69 65 |xpress o|r implie|
|00000150| 64 2e 0d 3b 3b 3b 3b 50 | 6c 65 61 73 65 20 73 65 |d..;;;;P|lease se|
|00000160| 6e 64 20 5b 73 75 67 67 | 65 73 74 69 6f 6e 73 20 |nd [sugg|estions |
|00000170| 66 6f 72 5d 20 69 6d 70 | 72 6f 76 65 6d 65 6e 74 |for] imp|rovement|
|00000180| 73 20 74 6f 20 74 68 65 | 20 61 62 6f 76 65 20 6f |s to the| above o|
|00000190| 72 20 53 6e 61 69 6c 3a | 0d 3b 3b 3b 3b 31 38 39 |r Snail:|.;;;;189|
|000001a0| 30 20 4d 61 70 6c 65 0d | 3b 3b 3b 3b 45 76 61 6e |0 Maple.|;;;;Evan|
|000001b0| 73 74 6f 6e 2c 20 49 4c | 20 20 36 30 32 30 31 0d |ston, IL| 60201.|
|000001c0| 0d 23 7c 0d 0d 49 20 64 | 6f 6e 27 74 20 6b 6e 6f |.#|..I d|on't kno|
|000001d0| 77 20 61 62 6f 75 74 20 | 79 27 61 6c 6c 2c 20 62 |w about |y'all, b|
|000001e0| 75 74 20 49 20 6f 66 74 | 65 6e 20 66 69 6e 64 20 |ut I oft|en find |
|000001f0| 6d 79 73 65 6c 66 20 68 | 61 63 6b 69 6e 67 20 66 |myself h|acking f|
|00000200| 75 72 69 6f 75 73 6c 79 | 20 61 6c 6c 20 6e 69 67 |uriously| all nig|
|00000210| 68 74 0d 61 6e 64 20 74 | 68 65 6e 20 66 69 78 69 |ht.and t|hen fixi|
|00000220| 6e 67 20 74 68 65 20 64 | 65 74 61 69 6c 20 77 6f |ng the d|etail wo|
|00000230| 72 6b 20 6f 6e 20 74 68 | 65 20 69 6e 74 65 72 66 |rk on th|e interf|
|00000240| 61 63 65 20 61 74 20 64 | 61 77 6e 2e 20 20 41 74 |ace at d|awn. At|
|00000250| 20 74 68 61 74 20 70 6f | 69 6e 74 2c 0d 65 73 74 | that po|int,.est|
|00000260| 69 6d 61 74 69 6e 67 20 | 23 40 28 35 37 20 36 39 |imating |#@(57 69|
|00000270| 29 20 61 6e 64 20 63 61 | 6c 63 75 6c 61 74 69 6e |) and ca|lculatin|
|00000280| 67 20 23 40 28 33 34 35 | 20 32 34 33 29 20 2d 20 |g #@(345| 243) - |
|00000290| 23 40 28 35 37 20 36 39 | 29 20 62 65 63 61 75 73 |#@(57 69|) becaus|
|000002a0| 65 20 74 68 61 74 27 73 | 0d 77 68 65 72 65 20 74 |e that's|.where t|
|000002b0| 68 65 20 73 75 62 2d 76 | 69 65 77 20 73 68 6f 75 |he sub-v|iew shou|
|000002c0| 6c 64 20 67 6f 20 69 73 | 20 61 20 64 69 66 66 69 |ld go is| a diffi|
|000002d0| 63 75 6c 74 20 70 72 6f | 62 6c 65 6d 2e 0d 0d 4d |cult pro|blem...M|
|000002e0| 79 20 62 72 61 69 6e 20 | 69 73 20 6e 75 6d 62 2e |y brain |is numb.|
|000002f0| 20 20 5b 50 72 6f 6e 6f | 75 6e 63 65 64 20 77 69 | [Prono|unced wi|
|00000300| 74 68 20 61 20 68 61 72 | 64 20 42 2e 5d 0d 0d 49 |th a har|d B.]..I|
|00000310| 20 63 61 6e 27 74 20 64 | 6f 20 6e 75 6d 62 65 72 | can't d|o number|
|00000320| 73 2e 0d 0d 48 65 6e 63 | 65 2c 20 4e 55 4d 42 2d |s...Henc|e, NUMB-|
|00000330| 4f 2d 52 41 4d 41 3a 20 | 20 28 70 75 6e 73 20 69 |O-RAMA: | (puns i|
|00000340| 6e 74 65 6e 64 65 64 29 | 0d 0d 49 74 20 69 73 20 |ntended)|..It is |
|00000350| 61 20 77 69 6e 64 6f 69 | 64 20 74 6f 20 64 69 73 |a windoi|d to dis|
|00000360| 70 6c 61 79 20 74 68 65 | 20 63 75 72 72 65 6e 74 |play the| current|
|00000370| 20 6d 6f 75 73 65 20 70 | 6f 73 69 74 69 6f 6e 20 | mouse p|osition |
|00000380| 69 6e 20 67 6c 6f 62 61 | 6c 20 63 6f 6f 72 64 69 |in globa|l coordi|
|00000390| 6e 61 74 65 73 20 61 6e | 64 0d 66 6f 72 20 20 77 |nates an|d.for w|
|000003a0| 69 6e 64 6f 77 2d 63 6f | 75 6e 74 20 77 69 6e 64 |indow-co|unt wind|
|000003b0| 6f 77 73 2e 20 20 77 69 | 6e 64 6f 77 2d 63 6f 75 |ows. wi|ndow-cou|
|000003c0| 6e 74 20 64 65 66 61 75 | 6c 74 73 20 74 6f 20 30 |nt defau|lts to 0|
|000003d0| 2c 20 61 6e 64 20 6d 61 | 79 20 62 65 20 63 68 61 |, and ma|y be cha|
|000003e0| 6e 67 65 64 20 77 69 74 | 68 0d 61 20 63 6f 6e 74 |nged wit|h.a cont|
|000003f0| 72 6f 6c 20 69 6e 20 74 | 68 65 20 6e 75 6d 62 2d |rol in t|he numb-|
|00000400| 6f 2d 72 61 6d 61 2e 0d | 0d 4e 55 4d 42 2d 4f 2d |o-rama..|.NUMB-O-|
|00000410| 52 41 4d 41 20 69 73 20 | 61 76 61 69 6c 61 62 6c |RAMA is |availabl|
|00000420| 65 20 66 72 6f 6d 20 74 | 68 65 20 54 6f 6f 6c 73 |e from t|he Tools|
|00000430| 20 6d 65 6e 75 20 5b 73 | 6f 72 72 79 20 69 66 20 | menu [s|orry if |
|00000440| 74 68 61 74 27 73 20 75 | 6e 6b 6f 73 68 65 72 5d |that's u|nkosher]|
|00000450| 2e 0d 49 20 6d 61 64 65 | 20 74 68 65 20 63 6f 6d |..I made| the com|
|00000460| 6d 61 6e 64 20 6b 65 79 | 3a 20 20 11 2d 3d 2e 20 |mand key|: .-=. |
|00000470| 20 41 20 6c 69 74 74 6c | 65 20 69 6e 63 6f 6e 76 | A littl|e inconv|
|00000480| 65 6e 69 65 6e 74 2c 20 | 62 75 74 20 6d 65 6d 6f |enient, |but memo|
|00000490| 72 61 62 6c 65 2e 0d 0d | 57 68 65 6e 20 61 20 4e |rable...|When a N|
|000004a0| 55 4d 42 2d 4f 2d 52 41 | 4d 41 20 69 73 20 76 69 |UMB-O-RA|MA is vi|
|000004b0| 73 69 62 6c 65 2c 20 74 | 68 69 73 20 6d 65 6e 75 |sible, t|his menu|
|000004c0| 2d 69 74 65 6d 20 70 61 | 73 74 65 73 20 74 68 65 |-item pa|stes the|
|000004d0| 20 63 75 72 72 65 6e 74 | 20 76 69 65 77 20 6d 6f | current| view mo|
|000004e0| 75 73 65 0d 70 6f 73 69 | 74 69 6f 6e 20 6f 66 20 |use.posi|tion of |
|000004f0| 74 68 65 20 66 72 6f 6e | 74 2d 6d 6f 73 74 20 77 |the fron|t-most w|
|00000500| 69 6e 64 6f 77 20 75 6e | 64 65 72 20 74 68 65 20 |indow un|der the |
|00000510| 6d 6f 75 73 65 20 69 6e | 74 6f 20 74 68 65 20 66 |mouse in|to the f|
|00000520| 72 6f 6e 74 2d 6d 6f 73 | 74 0d 66 72 65 64 2d 77 |ront-mos|t.fred-w|
|00000530| 69 6e 64 6f 77 2e 20 20 | 69 65 2c 20 49 74 20 70 |indow. |ie, It p|
|00000540| 61 73 74 65 73 20 74 68 | 65 20 63 6f 6f 72 64 69 |astes th|e coordi|
|00000550| 6e 61 74 65 73 20 79 6f | 75 20 77 61 6e 74 20 77 |nates yo|u want w|
|00000560| 68 65 72 65 20 79 6f 75 | 20 77 61 6e 74 20 74 68 |here you| want th|
|00000570| 65 6d 2e 0d 0d 54 68 75 | 73 2c 20 79 6f 75 20 63 |em...Thu|s, you c|
|00000580| 61 6e 20 68 61 76 65 20 | 6f 6e 65 20 6f 72 20 6d |an have |one or m|
|00000590| 6f 72 65 20 66 72 65 64 | 2d 77 69 6e 64 6f 77 73 |ore fred|-windows|
|000005a0| 20 6f 76 65 72 6c 61 79 | 69 6e 67 20 79 6f 75 72 | overlay|ing your|
|000005b0| 20 64 69 73 70 6c 61 79 | 2c 20 6d 6f 76 65 20 74 | display|, move t|
|000005c0| 68 65 0d 6d 6f 75 73 65 | 20 61 72 6f 75 6e 64 20 |he.mouse| around |
|000005d0| 74 6f 20 74 68 65 20 63 | 6f 72 72 65 63 74 20 70 |to the c|orrect p|
|000005e0| 6f 73 69 74 69 6f 6e 20 | 6f 6e 20 79 6f 75 72 20 |osition |on your |
|000005f0| 64 69 73 70 6c 61 79 20 | 77 69 6e 64 6f 77 20 61 |display |window a|
|00000600| 6e 64 20 70 61 73 74 65 | 20 74 68 65 20 72 69 67 |nd paste| the rig|
|00000610| 68 74 0d 63 6f 6f 72 64 | 69 6e 61 74 65 73 20 69 |ht.coord|inates i|
|00000620| 6e 74 6f 20 79 6f 75 72 | 20 66 72 65 64 2d 77 69 |nto your| fred-wi|
|00000630| 6e 64 6f 77 2e 0d 0d 45 | 6e 6a 6f 79 2e 0d 0d 7c |ndow...E|njoy...||
|00000640| 23 0d 0d 3b 3b 3b 3b 49 | 20 61 63 74 75 61 6c 6c |#..;;;;I| actuall|
|00000650| 79 20 6b 65 65 70 20 74 | 68 69 73 20 69 6e 20 66 |y keep t|his in f|
|00000660| 6f 6e 74 2d 69 6e 66 6f | 2e 6c 69 73 70 20 61 6c |ont-info|.lisp al|
|00000670| 6f 6e 67 20 77 69 74 68 | 20 66 6f 6e 74 2d 61 73 |ong with| font-as|
|00000680| 63 65 6e 74 20 65 74 63 | 2e 2e 2e 0d 28 64 65 66 |cent etc|....(def|
|00000690| 75 6e 20 66 6f 6e 74 2d | 77 69 64 6d 61 78 20 28 |un font-|widmax (|
|000006a0| 26 6f 70 74 69 6f 6e 61 | 6c 20 66 6f 6e 74 2d 73 |&optiona|l font-s|
|000006b0| 70 65 63 29 0d 22 26 6f | 70 74 69 6f 6e 61 6c 20 |pec)."&o|ptional |
|000006c0| 66 6f 6e 74 2d 73 70 65 | 63 0d 52 65 74 75 72 6e |font-spe|c.Return|
|000006d0| 73 20 74 68 65 20 77 69 | 64 6d 61 78 20 6f 66 20 |s the wi|dmax of |
|000006e0| 66 6f 6e 74 2d 73 70 65 | 63 2e 22 0d 20 20 28 74 |font-spe|c.". (t|
|000006f0| 68 69 72 64 20 28 6d 75 | 6c 74 69 70 6c 65 2d 76 |hird (mu|ltiple-v|
|00000700| 61 6c 75 65 2d 6c 69 73 | 74 20 28 66 6f 6e 74 2d |alue-lis|t (font-|
|00000710| 69 6e 66 6f 20 66 6f 6e | 74 2d 73 70 65 63 29 29 |info fon|t-spec))|
|00000720| 29 0d 29 0d 0d 3b 3b 3b | 3b 49 20 74 68 6f 75 67 |).)..;;;|;I thoug|
|00000730| 68 74 20 74 68 69 73 20 | 68 61 64 20 62 65 65 6e |ht this |had been|
|00000740| 20 64 6f 6e 65 2e 2e 2e | 0d 28 64 65 66 6d 65 74 | done...|.(defmet|
|00000750| 68 6f 64 20 66 69 6e 64 | 2d 76 69 65 77 2d 63 6f |hod find|-view-co|
|00000760| 6e 74 61 69 6e 69 6e 67 | 2d 70 6f 69 6e 74 20 28 |ntaining|-point (|
|00000770| 28 76 69 65 77 20 6e 75 | 6c 6c 29 20 68 20 26 6f |(view nu|ll) h &o|
|00000780| 70 74 69 6f 6e 61 6c 20 | 76 20 64 69 72 65 63 74 |ptional |v direct|
|00000790| 2d 73 75 62 76 69 65 77 | 73 2d 6f 6e 6c 79 29 0d |-subview|s-only).|
|000007a0| 20 20 28 64 65 63 6c 61 | 72 65 20 28 69 67 6e 6f | (decla|re (igno|
|000007b0| 72 65 20 64 69 72 65 63 | 74 2d 73 75 62 76 69 65 |re direc|t-subvie|
|000007c0| 77 73 2d 6f 6e 6c 79 29 | 29 0d 20 20 28 66 69 6e |ws-only)|). (fin|
|000007d0| 64 2d 69 66 20 23 27 28 | 6c 61 6d 62 64 61 20 28 |d-if #'(|lambda (|
|000007e0| 77 29 20 28 76 69 65 77 | 2d 63 6f 6e 74 61 69 6e |w) (view|-contain|
|000007f0| 73 2d 70 6f 69 6e 74 2d | 70 20 77 20 28 6d 61 6b |s-point-|p w (mak|
|00000800| 65 2d 70 6f 69 6e 74 20 | 68 20 76 29 29 29 0d 20 |e-point |h v))). |
|00000810| 20 20 20 20 20 20 20 20 | 20 20 28 77 69 6e 64 6f | | (windo|
|00000820| 77 73 29 0d 29 20 29 0d | 0d 28 64 65 66 70 61 72 |ws).) ).|.(defpar|
|00000830| 61 6d 65 74 65 72 20 2a | 6e 75 6d 62 2d 6f 2d 72 |ameter *|numb-o-r|
|00000840| 61 6d 61 2d 6d 65 6e 75 | 2d 69 74 65 6d 2a 0d 20 |ama-menu|-item*. |
|00000850| 20 28 6d 61 6b 65 2d 69 | 6e 73 74 61 6e 63 65 20 | (make-i|nstance |
|00000860| 27 6d 65 6e 75 2d 69 74 | 65 6d 0d 20 20 20 20 3a |'menu-it|em. :|
|00000870| 6d 65 6e 75 2d 69 74 65 | 6d 2d 74 69 74 6c 65 20 |menu-ite|m-title |
|00000880| 22 4e 75 6d 62 2d 4f 2d | 52 61 6d 61 22 0d 20 20 |"Numb-O-|Rama". |
|00000890| 20 20 3a 63 6f 6d 6d 61 | 6e 64 2d 6b 65 79 20 23 | :comma|nd-key #|
|000008a0| 5c 3d 0d 20 20 20 20 3a | 6d 65 6e 75 2d 69 74 65 |\=. :|menu-ite|
|000008b0| 6d 2d 61 63 74 69 6f 6e | 0d 20 20 20 20 23 27 28 |m-action|. #'(|
|000008c0| 6c 61 6d 62 64 61 20 28 | 29 0d 20 20 20 20 20 20 |lambda (|). |
|000008d0| 20 20 28 69 66 20 28 77 | 69 6e 64 6f 77 73 20 3a | (if (w|indows :|
|000008e0| 63 6c 61 73 73 20 27 6e | 75 6d 62 2d 6f 2d 72 61 |class 'n|umb-o-ra|
|000008f0| 6d 61 20 3a 69 6e 63 6c | 75 64 65 2d 77 69 6e 64 |ma :incl|ude-wind|
|00000900| 6f 69 64 73 20 74 29 0d | 20 20 20 20 20 20 20 20 |oids t).| |
|00000910| 20 20 28 6c 65 74 2a 20 | 28 28 67 6c 6f 62 61 6c | (let* |((global|
|00000920| 20 28 76 69 65 77 2d 6d | 6f 75 73 65 2d 70 6f 73 | (view-m|ouse-pos|
|00000930| 69 74 69 6f 6e 20 6e 69 | 6c 29 29 0d 20 20 20 20 |ition ni|l)). |
|00000940| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 28 77 69 | | (wi|
|00000950| 6e 20 28 66 69 6e 64 2d | 76 69 65 77 2d 63 6f 6e |n (find-|view-con|
|00000960| 74 61 69 6e 69 6e 67 2d | 70 6f 69 6e 74 20 6e 69 |taining-|point ni|
|00000970| 6c 20 67 6c 6f 62 61 6c | 29 29 0d 20 20 20 20 20 |l global|)). |
|00000980| 20 20 20 20 20 20 20 20 | 20 20 20 20 28 6c 6f 63 | | (loc|
|00000990| 61 6c 20 28 76 69 65 77 | 2d 6d 6f 75 73 65 2d 70 |al (view|-mouse-p|
|000009a0| 6f 73 69 74 69 6f 6e 20 | 77 69 6e 29 29 0d 20 20 |osition |win)). |
|000009b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 28 | | (|
|000009c0| 73 74 72 69 6e 67 20 28 | 70 6f 69 6e 74 2d 73 74 |string (|point-st|
|000009d0| 72 69 6e 67 20 6c 6f 63 | 61 6c 29 29 0d 20 20 20 |ring loc|al)). |
|000009e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 28 66 | | (f|
|000009f0| 72 65 64 20 28 66 72 6f | 6e 74 2d 77 69 6e 64 6f |red (fro|nt-windo|
|00000a00| 77 20 3a 63 6c 61 73 73 | 20 27 66 72 65 64 2d 77 |w :class| 'fred-w|
|00000a10| 69 6e 64 6f 77 29 29 0d | 20 20 20 20 20 20 20 20 |indow)).| |
|00000a20| 20 20 20 20 20 20 20 20 | 29 0d 20 20 20 20 20 20 | |). |
|00000a30| 20 20 20 20 20 20 28 69 | 66 20 66 72 65 64 0d 20 | (i|f fred. |
|00000a40| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 28 70 72 | | (pr|
|00000a50| 6f 67 6e 0d 20 20 20 20 | 20 20 20 20 20 20 20 20 |ogn. | |
|00000a60| 20 20 20 20 28 62 75 66 | 66 65 72 2d 69 6e 73 65 | (buf|fer-inse|
|00000a70| 72 74 20 28 66 72 65 64 | 2d 62 75 66 66 65 72 20 |rt (fred|-buffer |
|00000a80| 66 72 65 64 29 20 73 74 | 72 69 6e 67 29 0d 20 20 |fred) st|ring). |
|00000a90| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 3b 49 | | ;I|
|00000aa0| 6e 76 61 6c 69 64 61 74 | 65 20 74 68 65 20 76 69 |nvalidat|e the vi|
|00000ab0| 65 77 20 61 6e 64 20 75 | 70 64 61 74 65 20 77 69 |ew and u|pdate wi|
|00000ac0| 6e 64 6f 77 2d 6e 65 65 | 64 73 2d 73 61 76 69 6e |ndow-nee|ds-savin|
|00000ad0| 67 2d 70 0d 20 20 20 20 | 20 20 20 20 20 20 20 20 |g-p. | |
|00000ae0| 20 20 20 20 28 66 72 65 | 64 2d 75 70 64 61 74 65 | (fre|d-update|
|00000af0| 20 66 72 65 64 29 0d 20 | 20 20 20 20 20 20 20 20 | fred). | |
|00000b00| 20 20 20 20 20 29 0d 20 | 20 20 20 20 20 20 20 20 | ). | |
|00000b10| 20 20 20 20 20 28 65 64 | 2d 62 65 65 70 29 0d 20 | (ed|-beep). |
|00000b20| 20 20 20 20 20 20 20 20 | 20 29 20 29 0d 20 20 20 | | ) ). |
|00000b30| 20 20 20 20 20 20 20 28 | 70 72 6f 67 6e 0d 20 20 | (|progn. |
|00000b40| 20 20 20 20 20 20 20 20 | 20 20 28 6d 61 6b 65 2d | | (make-|
|00000b50| 69 6e 73 74 61 6e 63 65 | 20 27 6e 75 6d 62 2d 6f |instance| 'numb-o|
|00000b60| 2d 72 61 6d 61 29 0d 20 | 20 20 20 20 20 20 20 20 |-rama). | |
|00000b70| 20 20 20 28 73 65 74 2d | 6d 65 6e 75 2d 69 74 65 | (set-|menu-ite|
|00000b80| 6d 2d 74 69 74 6c 65 20 | 2a 6e 75 6d 62 2d 6f 2d |m-title |*numb-o-|
|00000b90| 72 61 6d 61 2d 6d 65 6e | 75 2d 69 74 65 6d 2a 20 |rama-men|u-item* |
|00000ba0| 22 50 61 73 74 65 20 68 | 76 22 29 0d 20 20 20 20 |"Paste h|v"). |
|00000bb0| 20 20 20 20 20 20 29 0d | 20 20 20 20 20 20 29 20 | ).| ) |
|00000bc0| 29 0d 29 20 29 0d 0d 28 | 64 65 66 63 6c 61 73 73 |).) )..(|defclass|
|00000bd0| 20 6e 75 6d 62 2d 6f 2d | 72 61 6d 61 20 28 77 69 | numb-o-|rama (wi|
|00000be0| 6e 64 6f 69 64 29 0d 20 | 20 28 28 77 69 6e 64 6f |ndoid). | ((windo|
|00000bf0| 77 2d 63 6f 75 6e 74 0d | 20 20 20 20 20 3a 64 6f |w-count.| :do|
|00000c00| 63 75 6d 65 6e 74 61 74 | 69 6f 6e 20 22 4e 75 6d |cumentat|ion "Num|
|00000c10| 62 65 72 20 6f 66 20 77 | 69 6e 64 6f 77 73 20 74 |ber of w|indows t|
|00000c20| 6f 20 64 69 73 70 6c 61 | 79 2e 22 0d 20 20 20 20 |o displa|y.". |
|00000c30| 20 3a 61 63 63 65 73 73 | 6f 72 20 77 69 6e 64 6f | :access|or windo|
|00000c40| 77 2d 63 6f 75 6e 74 0d | 20 20 20 20 20 3a 69 6e |w-count.| :in|
|00000c50| 69 74 61 72 67 20 3a 77 | 69 6e 64 6f 77 2d 63 6f |itarg :w|indow-co|
|00000c60| 75 6e 74 0d 20 20 20 20 | 20 3a 69 6e 69 74 66 6f |unt. | :initfo|
|00000c70| 72 6d 20 30 0d 20 20 20 | 20 20 3a 74 79 70 65 20 |rm 0. | :type |
|00000c80| 27 66 69 78 6e 75 6d 0d | 20 20 20 29 0d 20 20 20 |'fixnum.| ). |
|00000c90| 28 6c 61 73 74 2d 6d 6f | 75 73 65 2d 70 6f 73 0d |(last-mo|use-pos.|
|00000ca0| 20 20 20 20 20 3a 64 6f | 63 75 6d 65 6e 74 61 74 | :do|cumentat|
|00000cb0| 69 6f 6e 20 22 4d 61 69 | 6e 74 61 69 6e 73 20 74 |ion "Mai|ntains t|
|00000cc0| 68 65 20 6c 61 73 74 20 | 67 6c 6f 62 61 6c 20 6d |he last |global m|
|00000cd0| 6f 75 73 65 2d 70 6f 73 | 69 74 69 6f 6e 20 64 69 |ouse-pos|ition di|
|00000ce0| 73 70 6c 61 79 65 64 2e | 22 0d 20 20 20 20 20 3a |splayed.|". :|
|00000cf0| 61 63 63 65 73 73 6f 72 | 20 6c 61 73 74 2d 6d 6f |accessor| last-mo|
|00000d00| 75 73 65 2d 70 6f 73 0d | 20 20 20 20 20 3a 69 6e |use-pos.| :in|
|00000d10| 69 74 61 72 67 20 3a 6c | 61 73 74 2d 6d 6f 75 73 |itarg :l|ast-mous|
|00000d20| 65 2d 70 6f 73 0d 20 20 | 20 20 20 3a 69 6e 69 74 |e-pos. | :init|
|00000d30| 66 6f 72 6d 20 28 76 69 | 65 77 2d 6d 6f 75 73 65 |form (vi|ew-mouse|
|00000d40| 2d 70 6f 73 69 74 69 6f | 6e 20 6e 69 6c 29 0d 20 |-positio|n nil). |
|00000d50| 20 20 20 20 3a 74 79 70 | 65 20 27 66 69 78 6e 75 | :typ|e 'fixnu|
|00000d60| 6d 0d 20 20 20 29 0d 20 | 20 29 0d 20 20 28 3a 64 |m. ). | ). (:d|
|00000d70| 65 66 61 75 6c 74 2d 69 | 6e 69 74 61 72 67 73 0d |efault-i|nitargs.|
|00000d80| 20 20 20 20 3a 63 6c 6f | 73 65 2d 62 6f 78 2d 70 | :clo|se-box-p|
|00000d90| 20 74 0d 20 20 20 20 3a | 76 69 65 77 2d 73 69 7a | t. :|view-siz|
|00000da0| 65 20 23 40 28 31 20 31 | 29 0d 20 20 20 20 3a 76 |e #@(1 1|). :v|
|00000db0| 69 65 77 2d 66 6f 6e 74 | 20 27 28 22 4d 6f 6e 61 |iew-font| '("Mona|
|00000dc0| 63 6f 22 20 39 29 0d 20 | 20 29 0d 20 20 28 3a 64 |co" 9). | ). (:d|
|00000dd0| 6f 63 75 6d 65 6e 74 61 | 74 69 6f 6e 0d 20 20 20 |ocumenta|tion. |
|00000de0| 22 44 69 73 70 6c 61 79 | 73 20 76 69 65 77 2d 6d |"Display|s view-m|
|00000df0| 6f 75 73 65 2d 70 6f 73 | 69 74 69 6f 6e 20 69 6e |ouse-pos|ition in|
|00000e00| 20 67 6c 6f 62 61 6c 20 | 63 6f 6f 72 64 69 6e 61 | global |coordina|
|00000e10| 74 65 73 20 61 6e 64 20 | 73 6f 6d 65 20 77 69 6e |tes and |some win|
|00000e20| 64 6f 77 73 2e 0d 55 73 | 65 72 20 63 61 6e 20 61 |dows..Us|er can a|
|00000e30| 6c 74 65 72 20 6e 75 6d | 62 65 72 20 6f 66 20 77 |lter num|ber of w|
|00000e40| 69 6e 64 6f 77 73 20 74 | 6f 20 64 69 73 70 6c 61 |indows t|o displa|
|00000e50| 79 2e 22 0d 20 20 29 0d | 29 0d 0d 28 64 65 66 75 |y.". ).|)..(defu|
|00000e60| 6e 20 73 68 6f 72 74 2d | 77 69 6e 64 6f 77 2d 74 |n short-|window-t|
|00000e70| 69 74 6c 65 20 28 77 69 | 6e 64 6f 77 29 0d 20 20 |itle (wi|ndow). |
|00000e80| 22 77 69 6e 64 6f 77 0d | 52 65 74 75 72 6e 73 20 |"window.|Returns |
|00000e90| 6d 61 63 2d 66 69 6c 65 | 2d 6e 61 6d 65 73 74 72 |mac-file|-namestr|
|00000ea0| 69 6e 67 20 69 66 20 77 | 69 6e 64 6f 77 20 69 73 |ing if w|indow is|
|00000eb0| 20 61 20 66 72 65 64 2d | 77 69 6e 64 6f 77 20 61 | a fred-|window a|
|00000ec0| 6e 64 20 68 61 73 20 61 | 0d 77 69 6e 64 6f 77 2d |nd has a|.window-|
|00000ed0| 66 69 6c 65 6e 61 6d 65 | 2e 20 20 4f 74 68 65 72 |filename|. Other|
|00000ee0| 77 69 73 65 20 72 65 74 | 75 72 6e 73 20 77 69 6e |wise ret|urns win|
|00000ef0| 64 6f 77 2d 74 69 74 6c | 65 2e 22 0d 20 20 28 69 |dow-titl|e.". (i|
|00000f00| 66 20 28 61 6e 64 20 28 | 74 79 70 65 70 20 77 69 |f (and (|typep wi|
|00000f10| 6e 64 6f 77 20 27 66 72 | 65 64 2d 77 69 6e 64 6f |ndow 'fr|ed-windo|
|00000f20| 77 29 20 28 77 69 6e 64 | 6f 77 2d 66 69 6c 65 6e |w) (wind|ow-filen|
|00000f30| 61 6d 65 20 77 69 6e 64 | 6f 77 29 29 0d 20 20 20 |ame wind|ow)). |
|00000f40| 20 28 6d 61 63 2d 66 69 | 6c 65 2d 6e 61 6d 65 73 | (mac-fi|le-names|
|00000f50| 74 72 69 6e 67 20 28 77 | 69 6e 64 6f 77 2d 66 69 |tring (w|indow-fi|
|00000f60| 6c 65 6e 61 6d 65 20 77 | 69 6e 64 6f 77 29 29 0d |lename w|indow)).|
|00000f70| 20 20 20 20 28 77 69 6e | 64 6f 77 2d 74 69 74 6c | (win|dow-titl|
|00000f80| 65 20 77 69 6e 64 6f 77 | 29 0d 29 20 29 0d 0d 28 |e window|).) )..(|
|00000f90| 64 65 66 6d 65 74 68 6f | 64 20 77 69 6e 64 6f 77 |defmetho|d window|
|00000fa0| 2d 73 74 72 69 6e 67 73 | 20 28 28 76 69 65 77 20 |-strings| ((view |
|00000fb0| 6e 75 6d 62 2d 6f 2d 72 | 61 6d 61 29 29 0d 20 20 |numb-o-r|ama)). |
|00000fc0| 22 6e 75 6d 62 2d 6f 2d | 72 61 6d 61 0d 52 65 74 |"numb-o-|rama.Ret|
|00000fd0| 75 72 6e 73 20 74 68 65 | 20 6c 69 73 74 20 6f 66 |urns the| list of|
|00000fe0| 20 73 74 72 69 6e 67 73 | 20 6f 66 20 77 69 6e 64 | strings| of wind|
|00000ff0| 6f 77 73 20 74 6f 20 64 | 69 73 70 6c 61 79 2e 22 |ows to d|isplay."|
|00001000| 0d 20 20 28 6c 65 74 2a | 20 28 28 77 69 6e 73 20 |. (let*| ((wins |
|00001010| 28 77 69 6e 64 6f 77 73 | 29 29 0d 20 20 20 20 20 |(windows|)). |
|00001020| 20 20 20 20 28 77 69 6e | 73 20 28 73 75 62 73 65 | (win|s (subse|
|00001030| 71 20 77 69 6e 73 20 30 | 20 28 6d 69 6e 20 28 6c |q wins 0| (min (l|
|00001040| 65 6e 67 74 68 20 77 69 | 6e 73 29 20 28 77 69 6e |ength wi|ns) (win|
|00001050| 64 6f 77 2d 63 6f 75 6e | 74 20 76 69 65 77 29 29 |dow-coun|t view))|
|00001060| 29 29 0d 20 20 20 20 20 | 20 20 20 20 28 73 74 72 |)). | (str|
|00001070| 69 6e 67 73 20 28 6d 61 | 70 63 61 72 20 23 27 73 |ings (ma|pcar #'s|
|00001080| 68 6f 72 74 2d 77 69 6e | 64 6f 77 2d 74 69 74 6c |hort-win|dow-titl|
|00001090| 65 20 77 69 6e 73 29 29 | 0d 20 20 20 20 20 20 20 |e wins))|. |
|000010a0| 20 29 0d 20 20 20 20 28 | 70 75 73 68 20 22 47 6c | ). (|push "Gl|
|000010b0| 6f 62 61 6c 22 20 73 74 | 72 69 6e 67 73 29 0d 29 |obal" st|rings).)|
|000010c0| 20 29 0d 0d 28 64 65 66 | 6d 65 74 68 6f 64 20 63 | )..(def|method c|
|000010d0| 6f 6f 72 64 69 6e 61 74 | 65 73 2d 77 69 64 74 68 |oordinat|es-width|
|000010e0| 20 28 28 76 69 65 77 20 | 6e 75 6d 62 2d 6f 2d 72 | ((view |numb-o-r|
|000010f0| 61 6d 61 29 29 0d 20 20 | 22 76 69 65 77 0d 52 65 |ama)). |"view.Re|
|00001100| 74 75 72 6e 73 20 74 68 | 65 20 6d 61 78 69 6d 75 |turns th|e maximu|
|00001110| 6d 20 77 69 64 74 68 20 | 6f 66 20 61 20 70 6f 69 |m width |of a poi|
|00001120| 6e 74 2d 73 74 72 69 6e | 67 20 69 6e 20 74 68 65 |nt-strin|g in the|
|00001130| 20 76 69 65 77 2e 22 0d | 20 20 3b 46 61 72 20 61 | view.".| ;Far a|
|00001140| 73 20 49 20 6b 6e 6f 77 | 2c 20 74 68 65 20 6c 61 |s I know|, the la|
|00001150| 72 67 65 73 74 20 73 63 | 72 65 65 6e 20 61 76 61 |rgest sc|reen ava|
|00001160| 69 6c 61 62 6c 65 20 69 | 73 20 4f 28 31 30 30 30 |ilable i|s O(1000|
|00001170| 29 20 78 20 4f 28 31 30 | 30 29 2e 0d 20 20 3b 53 |) x O(10|0).. ;S|
|00001180| 6f 2c 20 23 40 28 58 58 | 58 58 20 58 58 58 29 20 |o, #@(XX|XX XXX) |
|00001190| 3d 3e 20 31 32 20 63 68 | 61 72 61 63 74 65 72 73 |=> 12 ch|aracters|
|000011a0| 20 6d 61 78 2e 0d 20 20 | 3b 54 68 75 73 2c 20 49 | max.. |;Thus, I|
|000011b0| 20 75 73 65 20 6c 75 63 | 6b 79 20 31 33 20 62 65 | use luc|ky 13 be|
|000011c0| 6c 6f 77 2c 20 31 20 65 | 78 74 72 61 20 66 6f 72 |low, 1 e|xtra for|
|000011d0| 20 63 6f 75 73 69 6e 20 | 4d 75 72 70 68 79 2e 0d | cousin |Murphy..|
|000011e0| 20 20 28 2a 20 28 66 6f | 6e 74 2d 77 69 64 6d 61 | (* (fo|nt-widma|
|000011f0| 78 20 28 76 69 65 77 2d | 66 6f 6e 74 20 76 69 65 |x (view-|font vie|
|00001200| 77 29 29 20 31 33 29 0d | 29 0d 0d 28 64 65 66 6d |w)) 13).|)..(defm|
|00001210| 65 74 68 6f 64 20 63 6f | 6e 74 72 6f 6c 2d 68 65 |ethod co|ntrol-he|
|00001220| 69 67 68 74 20 28 28 76 | 69 65 77 20 6e 75 6d 62 |ight ((v|iew numb|
|00001230| 2d 6f 2d 72 61 6d 61 29 | 29 0d 20 20 22 52 65 74 |-o-rama)|). "Ret|
|00001240| 75 72 6e 73 20 74 68 65 | 20 68 65 69 67 68 74 20 |urns the| height |
|00001250| 6f 66 20 74 68 65 20 63 | 6f 6e 74 72 6f 6c 73 20 |of the c|ontrols |
|00001260| 69 6e 20 61 20 6e 75 6d | 62 2d 6f 2d 72 61 6d 61 |in a num|b-o-rama|
|00001270| 2e 22 0d 20 20 31 36 0d | 29 0d 0d 28 64 65 66 6d |.". 16.|)..(defm|
|00001280| 65 74 68 6f 64 20 61 75 | 74 6f 2d 73 69 7a 65 20 |ethod au|to-size |
|00001290| 28 28 76 69 65 77 20 6e | 75 6d 62 2d 6f 2d 72 61 |((view n|umb-o-ra|
|000012a0| 6d 61 29 29 0d 20 20 22 | 6e 75 6d 62 2d 6f 2d 72 |ma)). "|numb-o-r|
|000012b0| 61 6d 61 0d 43 61 6c 63 | 75 6c 61 74 65 73 20 74 |ama.Calc|ulates t|
|000012c0| 68 65 20 77 69 64 74 68 | 20 74 68 61 74 20 61 20 |he width| that a |
|000012d0| 6e 75 6d 62 2d 6f 2d 72 | 61 6d 61 20 73 68 6f 75 |numb-o-r|ama shou|
|000012e0| 6c 64 20 62 65 2e 22 0d | 20 20 28 6c 65 74 2a 20 |ld be.".| (let* |
|000012f0| 28 28 66 6f 6e 74 20 28 | 76 69 65 77 2d 66 6f 6e |((font (|view-fon|
|00001300| 74 20 76 69 65 77 29 29 | 0d 20 20 20 20 20 20 20 |t view))|. |
|00001310| 20 20 28 73 74 72 69 6e | 67 73 20 28 77 69 6e 64 | (strin|gs (wind|
|00001320| 6f 77 2d 73 74 72 69 6e | 67 73 20 76 69 65 77 29 |ow-strin|gs view)|
|00001330| 29 0d 0d 20 20 20 20 20 | 20 20 20 20 28 73 74 72 |).. | (str|
|00001340| 69 6e 67 73 2d 77 69 64 | 74 68 73 20 28 6d 61 70 |ings-wid|ths (map|
|00001350| 63 61 72 20 23 27 73 74 | 72 69 6e 67 2d 77 69 64 |car #'st|ring-wid|
|00001360| 74 68 20 73 74 72 69 6e | 67 73 29 29 0d 20 20 20 |th strin|gs)). |
|00001370| 20 20 20 20 20 20 28 73 | 74 72 69 6e 67 73 2d 6d | (s|trings-m|
|00001380| 61 78 2d 77 69 64 74 68 | 20 28 61 70 70 6c 79 20 |ax-width| (apply |
|00001390| 23 27 6d 61 78 20 73 74 | 72 69 6e 67 73 2d 77 69 |#'max st|rings-wi|
|000013a0| 64 74 68 73 29 29 0d 0d | 20 20 20 20 20 20 20 20 |dths))..| |
|000013b0| 20 28 63 6f 6f 72 64 69 | 6e 61 74 65 73 2d 6d 61 | (coordi|nates-ma|
|000013c0| 78 2d 77 69 64 74 68 20 | 28 63 6f 6f 72 64 69 6e |x-width |(coordin|
|000013d0| 61 74 65 73 2d 77 69 64 | 74 68 20 76 69 65 77 29 |ates-wid|th view)|
|000013e0| 29 0d 20 20 20 20 20 20 | 20 20 20 28 77 68 69 74 |). | (whit|
|000013f0| 65 2d 73 70 61 63 65 2d | 77 69 64 74 68 20 31 34 |e-space-|width 14|
|00001400| 29 0d 20 20 20 20 20 20 | 20 20 20 28 77 69 64 74 |). | (widt|
|00001410| 68 20 28 2b 20 73 74 72 | 69 6e 67 73 2d 6d 61 78 |h (+ str|ings-max|
|00001420| 2d 77 69 64 74 68 20 63 | 6f 6f 72 64 69 6e 61 74 |-width c|oordinat|
|00001430| 65 73 2d 6d 61 78 2d 77 | 69 64 74 68 20 77 68 69 |es-max-w|idth whi|
|00001440| 74 65 2d 73 70 61 63 65 | 2d 77 69 64 74 68 29 29 |te-space|-width))|
|00001450| 0d 0d 20 20 20 20 20 20 | 20 20 20 28 6c 69 6e 65 |.. | (line|
|00001460| 73 20 28 6c 65 6e 67 74 | 68 20 73 74 72 69 6e 67 |s (lengt|h string|
|00001470| 73 29 29 0d 20 20 20 20 | 20 20 20 20 20 28 73 74 |s)). | (st|
|00001480| 72 69 6e 67 73 2d 68 65 | 69 67 68 74 20 28 2a 20 |rings-he|ight (* |
|00001490| 6c 69 6e 65 73 20 28 66 | 6f 6e 74 2d 6c 69 6e 65 |lines (f|ont-line|
|000014a0| 2d 68 65 69 67 68 74 20 | 66 6f 6e 74 29 29 29 0d |-height |font))).|
|000014b0| 20 20 20 20 20 20 20 20 | 20 28 63 6f 6e 74 72 6f | | (contro|
|000014c0| 6c 2d 68 65 69 67 68 74 | 20 28 63 6f 6e 74 72 6f |l-height| (contro|
|000014d0| 6c 2d 68 65 69 67 68 74 | 20 76 69 65 77 29 29 0d |l-height| view)).|
|000014e0| 20 20 20 20 20 20 20 20 | 20 28 77 68 69 74 65 2d | | (white-|
|000014f0| 73 70 61 63 65 2d 68 65 | 69 67 68 74 20 31 30 29 |space-he|ight 10)|
|00001500| 0d 20 20 20 20 20 20 20 | 20 20 28 68 65 69 67 68 |. | (heigh|
|00001510| 74 20 28 2b 20 73 74 72 | 69 6e 67 73 2d 68 65 69 |t (+ str|ings-hei|
|00001520| 67 68 74 20 63 6f 6e 74 | 72 6f 6c 2d 68 65 69 67 |ght cont|rol-heig|
|00001530| 68 74 20 77 68 69 74 65 | 2d 73 70 61 63 65 2d 68 |ht white|-space-h|
|00001540| 65 69 67 68 74 29 29 0d | 20 20 20 20 20 20 20 20 |eight)).| |
|00001550| 29 0d 20 20 20 20 28 6d | 61 6b 65 2d 70 6f 69 6e |). (m|ake-poin|
|00001560| 74 20 77 69 64 74 68 20 | 68 65 69 67 68 74 29 0d |t width |height).|
|00001570| 29 20 29 0d 0d 28 64 65 | 66 6d 65 74 68 6f 64 20 |) )..(de|fmethod |
|00001580| 73 65 74 2d 76 69 65 77 | 2d 73 69 7a 65 2d 61 75 |set-view|-size-au|
|00001590| 74 6f 20 28 28 76 69 65 | 77 20 6e 75 6d 62 2d 6f |to ((vie|w numb-o|
|000015a0| 2d 72 61 6d 61 29 29 0d | 20 20 28 73 65 74 2d 76 |-rama)).| (set-v|
|000015b0| 69 65 77 2d 73 69 7a 65 | 20 76 69 65 77 20 28 61 |iew-size| view (a|
|000015c0| 75 74 6f 2d 73 69 7a 65 | 20 76 69 65 77 29 29 0d |uto-size| view)).|
|000015d0| 29 0d 0d 28 64 65 66 6d | 65 74 68 6f 64 20 69 6e |)..(defm|ethod in|
|000015e0| 69 74 69 61 6c 69 7a 65 | 2d 69 6e 73 74 61 6e 63 |itialize|-instanc|
|000015f0| 65 20 3a 61 66 74 65 72 | 20 28 28 76 69 65 77 20 |e :after| ((view |
|00001600| 6e 75 6d 62 2d 6f 2d 72 | 61 6d 61 29 20 26 6b 65 |numb-o-r|ama) &ke|
|00001610| 79 29 0d 20 20 28 73 65 | 74 2d 76 69 65 77 2d 73 |y). (se|t-view-s|
|00001620| 69 7a 65 2d 61 75 74 6f | 20 76 69 65 77 29 0d 29 |ize-auto| view).)|
|00001630| 0d 0d 28 64 65 66 6d 65 | 74 68 6f 64 20 76 69 65 |..(defme|thod vie|
|00001640| 77 2d 64 72 61 77 2d 63 | 6f 6e 74 65 6e 74 73 20 |w-draw-c|ontents |
|00001650| 3a 62 65 66 6f 72 65 20 | 28 28 76 69 65 77 20 6e |:before |((view n|
|00001660| 75 6d 62 2d 6f 2d 72 61 | 6d 61 29 29 0d 20 20 28 |umb-o-ra|ma)). (|
|00001670| 72 6c 65 74 20 28 28 72 | 65 63 74 20 3a 72 65 63 |rlet ((r|ect :rec|
|00001680| 74 20 3a 74 6f 70 6c 65 | 66 74 20 23 40 28 30 20 |t :tople|ft #@(0 |
|00001690| 30 29 20 3a 62 6f 74 74 | 6f 6d 72 69 67 68 74 20 |0) :bott|omright |
|000016a0| 28 76 69 65 77 2d 73 69 | 7a 65 20 76 69 65 77 29 |(view-si|ze view)|
|000016b0| 29 29 0d 20 20 20 20 28 | 23 5f 45 72 61 73 65 52 |)). (|#_EraseR|
|000016c0| 65 63 74 20 72 65 63 74 | 29 0d 29 20 29 0d 0d 28 |ect rect|).) )..(|
|000016d0| 64 65 66 75 6e 20 73 74 | 72 69 6e 67 2d 6c 69 6e |defun st|ring-lin|
|000016e0| 65 73 20 28 73 74 72 69 | 6e 67 2d 6c 69 73 74 29 |es (stri|ng-list)|
|000016f0| 0d 20 20 22 73 74 72 69 | 6e 67 2d 6c 69 73 74 0d |. "stri|ng-list.|
|00001700| 43 6f 6e 63 61 74 65 6e | 61 74 65 73 20 74 68 65 |Concaten|ates the|
|00001710| 20 73 74 72 69 6e 67 73 | 20 6f 66 20 73 74 72 69 | strings| of stri|
|00001720| 6e 67 2d 6c 69 73 74 20 | 77 69 74 68 20 4e 65 77 |ng-list |with New|
|00001730| 4c 69 6e 65 73 20 62 65 | 74 77 65 65 6e 20 74 68 |Lines be|tween th|
|00001740| 65 6d 2e 22 0d 20 20 28 | 72 65 64 75 63 65 20 23 |em.". (|reduce #|
|00001750| 27 28 6c 61 6d 62 64 61 | 20 28 73 31 20 73 32 29 |'(lambda| (s1 s2)|
|00001760| 20 28 63 6f 6e 63 61 74 | 65 6e 61 74 65 20 27 73 | (concat|enate 's|
|00001770| 74 72 69 6e 67 20 73 31 | 20 23 2e 28 73 74 72 69 |tring s1| #.(stri|
|00001780| 6e 67 20 23 5c 4e 65 77 | 4c 69 6e 65 29 20 73 32 |ng #\New|Line) s2|
|00001790| 29 29 0d 20 20 20 20 20 | 20 20 20 20 20 73 74 72 |)). | str|
|000017a0| 69 6e 67 2d 6c 69 73 74 | 0d 29 20 29 0d 0d 28 64 |ing-list|.) )..(d|
|000017b0| 65 66 6d 65 74 68 6f 64 | 20 76 69 65 77 2d 64 72 |efmethod| view-dr|
|000017c0| 61 77 2d 63 6f 6e 74 65 | 6e 74 73 20 3a 61 66 74 |aw-conte|nts :aft|
|000017d0| 65 72 20 28 28 76 69 65 | 77 20 6e 75 6d 62 2d 6f |er ((vie|w numb-o|
|000017e0| 2d 72 61 6d 61 29 29 0d | 20 20 3b 44 72 61 77 20 |-rama)).| ;Draw |
|000017f0| 63 6f 6e 74 72 6f 6c 0d | 23 7c 0d 20 20 2f 5c 0d |control.|#|. /\.|
|00001800| 20 20 3d 3d 0d 20 20 5c | 2f 0d 7c 23 0d 20 20 28 | ==. \|/.|#. (|
|00001810| 6c 65 74 2a 20 28 28 73 | 74 61 72 74 2d 68 20 32 |let* ((s|tart-h 2|
|00001820| 29 0d 20 20 20 20 20 20 | 20 20 20 28 73 74 61 72 |). | (star|
|00001830| 74 2d 76 20 39 29 0d 20 | 20 20 20 20 20 20 20 29 |t-v 9). | )|
|00001840| 0d 20 20 20 20 28 23 5f | 4d 6f 76 65 54 6f 20 73 |. (#_|MoveTo s|
|00001850| 74 61 72 74 2d 68 20 73 | 74 61 72 74 2d 76 29 0d |tart-h s|tart-v).|
|00001860| 20 20 20 20 28 77 69 74 | 68 2d 66 6f 72 65 2d 63 | (wit|h-fore-c|
|00001870| 6f 6c 6f 72 20 28 69 66 | 20 28 7a 65 72 6f 70 20 |olor (if| (zerop |
|00001880| 28 77 69 6e 64 6f 77 2d | 63 6f 75 6e 74 20 76 69 |(window-|count vi|
|00001890| 65 77 29 29 20 2a 67 72 | 61 79 2d 63 6f 6c 6f 72 |ew)) *gr|ay-color|
|000018a0| 2a 20 2a 62 6c 61 63 6b | 2d 63 6f 6c 6f 72 2a 29 |* *black|-color*)|
|000018b0| 0d 20 20 20 20 20 20 28 | 23 5f 4c 69 6e 65 20 31 |. (|#_Line 1|
|000018c0| 36 20 30 29 0d 20 20 20 | 20 20 20 28 23 5f 4c 69 |6 0). | (#_Li|
|000018d0| 6e 65 20 2d 38 20 2d 38 | 29 0d 20 20 20 20 20 20 |ne -8 -8|). |
|000018e0| 28 23 5f 4c 69 6e 65 20 | 2d 38 20 38 29 0d 20 20 |(#_Line |-8 8). |
|000018f0| 20 20 29 0d 20 20 20 20 | 28 23 5f 4d 6f 76 65 20 | ). |(#_Move |
|00001900| 30 20 32 29 0d 20 20 20 | 20 28 77 69 74 68 2d 66 |0 2). | (with-f|
|00001910| 6f 72 65 2d 63 6f 6c 6f | 72 20 28 69 66 20 28 3e |ore-colo|r (if (>|
|00001920| 3d 20 28 77 69 6e 64 6f | 77 2d 63 6f 75 6e 74 20 |= (windo|w-count |
|00001930| 76 69 65 77 29 20 28 6c | 65 6e 67 74 68 20 28 77 |view) (l|ength (w|
|00001940| 69 6e 64 6f 77 73 29 29 | 29 20 2a 67 72 61 79 2d |indows))|) *gray-|
|00001950| 63 6f 6c 6f 72 2a 20 2a | 62 6c 61 63 6b 2d 63 6f |color* *|black-co|
|00001960| 6c 6f 72 2a 29 0d 20 20 | 20 20 20 20 28 23 5f 4c |lor*). | (#_L|
|00001970| 69 6e 65 20 31 36 20 30 | 29 0d 20 20 20 20 20 20 |ine 16 0|). |
|00001980| 28 23 5f 4c 69 6e 65 20 | 2d 38 20 38 29 0d 20 20 |(#_Line |-8 8). |
|00001990| 20 20 20 20 28 23 5f 4c | 69 6e 65 20 2d 38 20 2d | (#_L|ine -8 -|
|000019a0| 38 29 0d 20 20 20 20 29 | 0d 20 20 20 20 28 23 5f |8). )|. (#_|
|000019b0| 4d 6f 76 65 54 6f 20 32 | 34 20 31 34 29 0d 20 20 |MoveTo 2|4 14). |
|000019c0| 20 20 28 77 69 74 68 2d | 70 73 74 72 73 20 28 28 | (with-|pstrs ((|
|000019d0| 73 74 72 20 28 66 6f 72 | 6d 61 74 20 6e 69 6c 20 |str (for|mat nil |
|000019e0| 22 7e 41 22 20 28 77 69 | 6e 64 6f 77 2d 63 6f 75 |"~A" (wi|ndow-cou|
|000019f0| 6e 74 20 76 69 65 77 29 | 29 29 29 0d 20 20 20 20 |nt view)|))). |
|00001a00| 20 20 28 23 5f 44 72 61 | 77 53 74 72 69 6e 67 20 | (#_Dra|wString |
|00001a10| 73 74 72 29 0d 20 20 29 | 20 29 0d 20 20 3b 44 72 |str). )| ). ;Dr|
|00001a20| 61 77 20 73 74 72 69 6e | 67 73 2e 0d 20 20 28 6c |aw strin|gs.. (l|
|00001a30| 65 74 2a 20 28 28 74 6f | 70 6c 65 66 74 20 23 40 |et* ((to|pleft #@|
|00001a40| 28 32 20 32 32 29 29 0d | 20 20 20 20 20 20 20 20 |(2 22)).| |
|00001a50| 20 28 73 69 7a 65 20 28 | 76 69 65 77 2d 73 69 7a | (size (|view-siz|
|00001a60| 65 20 76 69 65 77 29 29 | 0d 20 20 20 20 20 20 20 |e view))|. |
|00001a70| 20 20 28 77 69 64 74 68 | 20 28 70 6f 69 6e 74 2d | (width| (point-|
|00001a80| 68 20 73 69 7a 65 29 29 | 0d 20 20 20 20 20 20 20 |h size))|. |
|00001a90| 20 20 28 68 65 69 67 68 | 74 20 28 70 6f 69 6e 74 | (heigh|t (point|
|00001aa0| 2d 76 20 73 69 7a 65 29 | 29 0d 0d 20 20 20 20 20 |-v size)|).. |
|00001ab0| 20 20 20 20 3b 54 68 65 | 20 34 73 20 62 65 6c 6f | ;The| 4s belo|
|00001ac0| 77 20 61 72 65 20 66 6f | 72 20 77 68 69 74 65 2d |w are fo|r white-|
|00001ad0| 73 70 61 63 65 2e 0d 20 | 20 20 20 20 20 20 20 20 |space.. | |
|00001ae0| 28 72 69 67 68 74 20 28 | 2d 20 77 69 64 74 68 20 |(right (|- width |
|00001af0| 28 63 6f 6f 72 64 69 6e | 61 74 65 73 2d 77 69 64 |(coordin|ates-wid|
|00001b00| 74 68 20 76 69 65 77 29 | 20 34 29 29 0d 20 20 20 |th view)| 4)). |
|00001b10| 20 20 20 20 20 20 28 62 | 6f 74 74 6f 6d 20 28 2d | (b|ottom (-|
|00001b20| 20 68 65 69 67 68 74 20 | 34 29 29 0d 20 20 20 20 | height |4)). |
|00001b30| 20 20 20 20 20 28 73 74 | 72 69 6e 67 73 20 28 77 | (st|rings (w|
|00001b40| 69 6e 64 6f 77 2d 73 74 | 72 69 6e 67 73 20 76 69 |indow-st|rings vi|
|00001b50| 65 77 29 29 0d 20 20 20 | 20 20 20 20 20 20 28 73 |ew)). | (s|
|00001b60| 74 72 69 6e 67 20 28 73 | 74 72 69 6e 67 2d 6c 69 |tring (s|tring-li|
|00001b70| 6e 65 73 20 73 74 72 69 | 6e 67 73 29 29 0d 20 20 |nes stri|ngs)). |
|00001b80| 20 20 20 20 20 20 29 0d | 20 20 20 20 28 72 6c 65 | ).| (rle|
|00001b90| 74 20 28 28 72 65 63 74 | 20 3a 72 65 63 74 20 3a |t ((rect| :rect :|
|00001ba0| 74 6f 70 6c 65 66 74 20 | 74 6f 70 6c 65 66 74 20 |topleft |topleft |
|00001bb0| 3a 72 69 67 68 74 20 72 | 69 67 68 74 20 3a 62 6f |:right r|ight :bo|
|00001bc0| 74 74 6f 6d 20 62 6f 74 | 74 6f 6d 29 0d 20 20 20 |ttom bot|tom). |
|00001bd0| 20 20 20 20 20 20 20 20 | 28 74 65 6d 70 20 3a 70 | |(temp :p|
|00001be0| 6f 69 6e 74 65 72 29 0d | 20 20 20 20 20 20 20 20 |ointer).| |
|00001bf0| 20 20 29 0d 20 20 20 20 | 20 20 28 77 69 74 68 2d | ). | (with-|
|00001c00| 70 73 74 72 73 20 28 28 | 73 74 72 20 73 74 72 69 |pstrs ((|str stri|
|00001c10| 6e 67 29 29 0d 20 20 20 | 20 20 20 20 20 28 25 73 |ng)). | (%s|
|00001c20| 65 74 66 2d 6d 61 63 70 | 74 72 20 74 65 6d 70 20 |etf-macp|tr temp |
|00001c30| 73 74 72 29 0d 20 20 20 | 20 20 20 20 20 28 25 69 |str). | (%i|
|00001c40| 6e 63 66 2d 70 74 72 20 | 74 65 6d 70 29 0d 20 20 |ncf-ptr |temp). |
|00001c50| 20 20 20 20 20 20 28 23 | 5f 54 65 78 74 42 6f 78 | (#|_TextBox|
|00001c60| 20 74 65 6d 70 20 28 25 | 67 65 74 2d 62 79 74 65 | temp (%|get-byte|
|00001c70| 20 73 74 72 29 20 72 65 | 63 74 20 23 24 74 65 4a | str) re|ct #$teJ|
|00001c80| 75 73 74 52 69 67 68 74 | 29 0d 20 20 29 20 29 20 |ustRight|). ) ) |
|00001c90| 29 0d 20 20 3b 44 72 61 | 77 20 63 6f 6f 72 64 69 |). ;Dra|w coordi|
|00001ca0| 6e 61 74 65 73 0d 20 20 | 28 6c 65 74 2a 20 28 28 |nates. |(let* ((|
|00001cb0| 73 69 7a 65 20 28 76 69 | 65 77 2d 73 69 7a 65 20 |size (vi|ew-size |
|00001cc0| 76 69 65 77 29 29 0d 20 | 20 20 20 20 20 20 20 20 |view)). | |
|00001cd0| 28 76 69 65 77 2d 77 69 | 64 74 68 20 28 70 6f 69 |(view-wi|dth (poi|
|00001ce0| 6e 74 2d 68 20 73 69 7a | 65 29 29 0d 20 20 20 20 |nt-h siz|e)). |
|00001cf0| 20 20 20 20 20 28 76 69 | 65 77 2d 68 65 69 67 68 | (vi|ew-heigh|
|00001d00| 74 20 28 70 6f 69 6e 74 | 2d 76 20 73 69 7a 65 29 |t (point|-v size)|
|00001d10| 29 0d 20 20 20 20 20 20 | 20 20 20 28 74 6f 70 20 |). | (top |
|00001d20| 32 32 29 0d 20 20 20 20 | 20 20 20 20 20 28 6c 65 |22). | (le|
|00001d30| 66 74 20 28 2d 20 76 69 | 65 77 2d 77 69 64 74 68 |ft (- vi|ew-width|
|00001d40| 20 28 63 6f 6f 72 64 69 | 6e 61 74 65 73 2d 77 69 | (coordi|nates-wi|
|00001d50| 64 74 68 20 76 69 65 77 | 29 29 29 0d 20 20 20 20 |dth view|))). |
|00001d60| 20 20 20 20 20 3b 32 20 | 61 6e 64 20 34 20 62 65 | ;2 |and 4 be|
|00001d70| 6c 6f 77 20 61 72 65 20 | 77 68 69 74 65 2d 73 70 |low are |white-sp|
|00001d80| 61 63 65 2e 0d 20 20 20 | 20 20 20 20 20 20 28 62 |ace.. | (b|
|00001d90| 6f 74 74 6f 6d 20 28 2d | 20 76 69 65 77 2d 68 65 |ottom (-| view-he|
|00001da0| 69 67 68 74 20 34 29 29 | 0d 20 20 20 20 20 20 20 |ight 4))|. |
|00001db0| 20 20 28 72 69 67 68 74 | 20 28 2d 20 76 69 65 77 | (right| (- view|
|00001dc0| 2d 77 69 64 74 68 20 32 | 29 29 0d 20 20 20 20 20 |-width 2|)). |
|00001dd0| 20 20 20 20 28 77 2d 63 | 20 28 6d 69 6e 20 28 6c | (w-c| (min (l|
|00001de0| 65 6e 67 74 68 20 28 77 | 69 6e 64 6f 77 73 29 29 |ength (w|indows))|
|00001df0| 20 28 77 69 6e 64 6f 77 | 2d 63 6f 75 6e 74 20 76 | (window|-count v|
|00001e00| 69 65 77 29 29 29 0d 20 | 20 20 20 20 20 20 20 20 |iew))). | |
|00001e10| 28 63 6f 6f 72 64 69 6e | 61 74 65 73 0d 20 20 20 |(coordin|ates. |
|00001e20| 20 20 20 20 20 20 20 20 | 28 6d 61 70 63 61 72 20 | |(mapcar |
|00001e30| 23 27 76 69 65 77 2d 6d | 6f 75 73 65 2d 70 6f 73 |#'view-m|ouse-pos|
|00001e40| 69 74 69 6f 6e 20 28 63 | 6f 6e 73 20 6e 69 6c 20 |ition (c|ons nil |
|00001e50| 28 73 75 62 73 65 71 20 | 28 77 69 6e 64 6f 77 73 |(subseq |(windows|
|00001e60| 29 20 30 20 77 2d 63 29 | 29 29 0d 20 20 20 20 20 |) 0 w-c)|)). |
|00001e70| 20 20 20 20 29 0d 20 20 | 20 20 20 20 20 20 20 28 | ). | (|
|00001e80| 73 74 72 69 6e 67 73 20 | 28 6d 61 70 63 61 72 20 |strings |(mapcar |
|00001e90| 23 27 70 6f 69 6e 74 2d | 73 74 72 69 6e 67 20 63 |#'point-|string c|
|00001ea0| 6f 6f 72 64 69 6e 61 74 | 65 73 29 29 0d 20 20 20 |oordinat|es)). |
|00001eb0| 20 20 20 20 20 20 28 73 | 74 72 69 6e 67 20 28 73 | (s|tring (s|
|00001ec0| 74 72 69 6e 67 2d 6c 69 | 6e 65 73 20 73 74 72 69 |tring-li|nes stri|
|00001ed0| 6e 67 73 29 29 0d 20 20 | 20 20 20 20 20 20 29 0d |ngs)). | ).|
|00001ee0| 20 20 20 20 28 72 6c 65 | 74 20 28 28 72 65 63 74 | (rle|t ((rect|
|00001ef0| 20 3a 72 65 63 74 20 3a | 6c 65 66 74 20 6c 65 66 | :rect :|left lef|
|00001f00| 74 20 3a 74 6f 70 20 74 | 6f 70 20 3a 72 69 67 68 |t :top t|op :righ|
|00001f10| 74 20 72 69 67 68 74 20 | 3a 62 6f 74 74 6f 6d 20 |t right |:bottom |
|00001f20| 62 6f 74 74 6f 6d 29 0d | 20 20 20 20 20 20 20 20 |bottom).| |
|00001f30| 20 20 20 28 74 65 6d 70 | 20 3a 70 6f 69 6e 74 65 | (temp| :pointe|
|00001f40| 72 29 0d 20 20 20 20 20 | 20 20 20 20 20 29 0d 20 |r). | ). |
|00001f50| 20 20 20 20 20 28 77 69 | 74 68 2d 70 73 74 72 73 | (wi|th-pstrs|
|00001f60| 20 28 28 73 74 72 20 73 | 74 72 69 6e 67 29 29 0d | ((str s|tring)).|
|00001f70| 20 20 20 20 20 20 20 20 | 28 25 73 65 74 66 2d 6d | |(%setf-m|
|00001f80| 61 63 70 74 72 20 74 65 | 6d 70 20 73 74 72 29 0d |acptr te|mp str).|
|00001f90| 20 20 20 20 20 20 20 20 | 28 25 69 6e 63 66 2d 70 | |(%incf-p|
|00001fa0| 74 72 20 74 65 6d 70 29 | 0d 20 20 20 20 20 20 20 |tr temp)|. |
|00001fb0| 20 28 23 5f 54 65 78 74 | 42 6f 78 20 74 65 6d 70 | (#_Text|Box temp|
|00001fc0| 20 28 25 67 65 74 2d 62 | 79 74 65 20 73 74 72 29 | (%get-b|yte str)|
|00001fd0| 20 72 65 63 74 20 23 24 | 74 65 4a 75 73 74 4c 65 | rect #$|teJustLe|
|00001fe0| 66 74 29 0d 29 20 29 20 | 29 20 29 0d 0d 28 64 65 |ft).) ) |) )..(de|
|00001ff0| 66 6d 65 74 68 6f 64 20 | 76 69 65 77 2d 63 6c 69 |fmethod |view-cli|
|00002000| 63 6b 2d 65 76 65 6e 74 | 2d 68 61 6e 64 6c 65 72 |ck-event|-handler|
|00002010| 20 3a 61 66 74 65 72 20 | 28 28 76 69 65 77 20 6e | :after |((view n|
|00002020| 75 6d 62 2d 6f 2d 72 61 | 6d 61 29 20 77 68 65 72 |umb-o-ra|ma) wher|
|00002030| 65 29 0d 20 20 28 72 6c | 65 74 20 28 28 75 70 20 |e). (rl|et ((up |
|00002040| 3a 72 65 63 74 20 3a 6c | 65 66 74 20 32 20 3a 74 |:rect :l|eft 2 :t|
|00002050| 6f 70 20 32 20 20 3a 72 | 69 67 68 74 20 31 38 20 |op 2 :r|ight 18 |
|00002060| 3a 62 6f 74 74 6f 6d 20 | 31 31 29 0d 20 20 20 20 |:bottom |11). |
|00002070| 20 20 20 20 20 28 64 6e | 20 3a 72 65 63 74 20 3a | (dn| :rect :|
|00002080| 6c 65 66 74 20 32 20 3a | 74 6f 70 20 31 31 20 3a |left 2 :|top 11 :|
|00002090| 72 69 67 68 74 20 31 38 | 20 3a 62 6f 74 74 6f 6d |right 18| :bottom|
|000020a0| 20 32 30 29 0d 20 20 20 | 20 20 20 20 20 29 0d 20 | 20). | ). |
|000020b0| 20 20 20 28 63 6f 6e 64 | 0d 20 20 20 20 20 20 28 | (cond|. (|
|000020c0| 28 23 5f 50 74 49 6e 52 | 65 63 74 20 77 68 65 72 |(#_PtInR|ect wher|
|000020d0| 65 20 75 70 29 0d 20 20 | 20 20 20 20 20 28 75 6e |e up). | (un|
|000020e0| 6c 65 73 73 20 28 7a 65 | 72 6f 70 20 28 77 69 6e |less (ze|rop (win|
|000020f0| 64 6f 77 2d 63 6f 75 6e | 74 20 76 69 65 77 29 29 |dow-coun|t view))|
|00002100| 0d 20 20 20 20 20 20 20 | 20 20 28 73 65 74 66 20 |. | (setf |
|00002110| 28 77 69 6e 64 6f 77 2d | 63 6f 75 6e 74 20 76 69 |(window-|count vi|
|00002120| 65 77 29 0d 20 20 20 20 | 20 20 20 20 20 20 20 20 |ew). | |
|00002130| 20 20 20 28 6d 69 6e 20 | 28 31 2d 20 28 77 69 6e | (min |(1- (win|
|00002140| 64 6f 77 2d 63 6f 75 6e | 74 20 76 69 65 77 29 29 |dow-coun|t view))|
|00002150| 20 28 6c 65 6e 67 74 68 | 20 28 77 69 6e 64 6f 77 | (length| (window|
|00002160| 73 29 29 29 0d 20 20 20 | 20 20 20 20 20 20 29 0d |s))). | ).|
|00002170| 20 20 20 20 20 20 20 20 | 20 28 73 65 74 2d 76 69 | | (set-vi|
|00002180| 65 77 2d 73 69 7a 65 2d | 61 75 74 6f 20 76 69 65 |ew-size-|auto vie|
|00002190| 77 29 0d 20 20 20 20 20 | 20 20 20 20 28 69 6e 76 |w). | (inv|
|000021a0| 61 6c 69 64 61 74 65 2d | 76 69 65 77 20 76 69 65 |alidate-|view vie|
|000021b0| 77 29 0d 20 20 20 20 20 | 20 29 29 0d 20 20 20 20 |w). | )). |
|000021c0| 20 20 28 28 23 5f 50 74 | 49 6e 52 65 63 74 20 77 | ((#_Pt|InRect w|
|000021d0| 68 65 72 65 20 64 6e 29 | 0d 20 20 20 20 20 20 20 |here dn)|. |
|000021e0| 28 75 6e 6c 65 73 73 20 | 28 3e 3d 20 28 77 69 6e |(unless |(>= (win|
|000021f0| 64 6f 77 2d 63 6f 75 6e | 74 20 76 69 65 77 29 20 |dow-coun|t view) |
|00002200| 28 6c 65 6e 67 74 68 20 | 28 77 69 6e 64 6f 77 73 |(length |(windows|
|00002210| 29 29 29 0d 20 20 20 20 | 20 20 20 20 20 28 73 65 |))). | (se|
|00002220| 74 66 20 28 77 69 6e 64 | 6f 77 2d 63 6f 75 6e 74 |tf (wind|ow-count|
|00002230| 20 76 69 65 77 29 20 28 | 6d 69 6e 20 28 31 2b 20 | view) (|min (1+ |
|00002240| 28 77 69 6e 64 6f 77 2d | 63 6f 75 6e 74 20 76 69 |(window-|count vi|
|00002250| 65 77 29 29 20 28 6c 65 | 6e 67 74 68 20 28 77 69 |ew)) (le|ngth (wi|
|00002260| 6e 64 6f 77 73 29 29 29 | 29 0d 20 20 20 20 20 20 |ndows)))|). |
|00002270| 20 20 20 28 73 65 74 2d | 76 69 65 77 2d 73 69 7a | (set-|view-siz|
|00002280| 65 2d 61 75 74 6f 20 76 | 69 65 77 29 0d 20 20 20 |e-auto v|iew). |
|00002290| 20 20 20 20 20 20 28 69 | 6e 76 61 6c 69 64 61 74 | (i|nvalidat|
|000022a0| 65 2d 76 69 65 77 20 76 | 69 65 77 29 0d 20 20 20 |e-view v|iew). |
|000022b0| 20 20 20 29 29 0d 29 20 | 29 20 29 0d 0d 28 64 65 | )).) |) )..(de|
|000022c0| 66 6d 65 74 68 6f 64 20 | 77 69 6e 64 6f 77 2d 63 |fmethod |window-c|
|000022d0| 6c 6f 73 65 20 3a 61 66 | 74 65 72 20 28 28 76 69 |lose :af|ter ((vi|
|000022e0| 65 77 20 6e 75 6d 62 2d | 6f 2d 72 61 6d 61 29 29 |ew numb-|o-rama))|
|000022f0| 0d 20 20 28 73 65 74 2d | 6d 65 6e 75 2d 69 74 65 |. (set-|menu-ite|
|00002300| 6d 2d 74 69 74 6c 65 20 | 2a 6e 75 6d 62 2d 6f 2d |m-title |*numb-o-|
|00002310| 72 61 6d 61 2d 6d 65 6e | 75 2d 69 74 65 6d 2a 20 |rama-men|u-item* |
|00002320| 22 4e 75 6d 62 2d 4f 2d | 52 61 6d 61 22 29 0d 29 |"Numb-O-|Rama").)|
|00002330| 0d 0d 28 61 64 64 2d 6d | 65 6e 75 2d 69 74 65 6d |..(add-m|enu-item|
|00002340| 73 20 2a 74 6f 6f 6c 73 | 2d 6d 65 6e 75 2a 0d 20 |s *tools|-menu*. |
|00002350| 20 28 6d 61 6b 65 2d 69 | 6e 73 74 61 6e 63 65 20 | (make-i|nstance |
|00002360| 27 6d 65 6e 75 2d 69 74 | 65 6d 20 3a 6d 65 6e 75 |'menu-it|em :menu|
|00002370| 2d 69 74 65 6d 2d 74 69 | 74 6c 65 20 22 2d 22 29 |-item-ti|tle "-")|
|00002380| 0d 20 20 2a 6e 75 6d 62 | 2d 6f 2d 72 61 6d 61 2d |. *numb|-o-rama-|
|00002390| 6d 65 6e 75 2d 69 74 65 | 6d 2a 0d 29 0d 0d 3b 3b |menu-ite|m*.)..;;|
|000023a0| 3b 3b 54 68 69 73 20 73 | 68 6f 75 6c 64 20 72 65 |;;This s|hould re|
|000023b0| 61 6c 6c 79 20 62 65 20 | 72 65 70 6c 61 63 65 64 |ally be |replaced|
|000023c0| 2e 0d 28 64 65 66 6d 65 | 74 68 6f 64 20 77 69 6e |..(defme|thod win|
|000023d0| 64 6f 77 2d 6e 75 6c 6c | 2d 65 76 65 6e 74 2d 68 |dow-null|-event-h|
|000023e0| 61 6e 64 6c 65 72 20 3a | 61 66 74 65 72 20 28 28 |andler :|after ((|
|000023f0| 76 69 65 77 20 77 69 6e | 64 6f 77 29 29 0d 20 20 |view win|dow)). |
|00002400| 28 6d 61 70 63 0d 20 20 | 20 20 23 27 28 6c 61 6d |(mapc. | #'(lam|
|00002410| 62 64 61 20 28 76 69 65 | 77 29 0d 20 20 20 20 20 |bda (vie|w). |
|00002420| 20 20 20 28 75 6e 6c 65 | 73 73 20 28 3d 20 28 6c | (unle|ss (= (l|
|00002430| 61 73 74 2d 6d 6f 75 73 | 65 2d 70 6f 73 20 76 69 |ast-mous|e-pos vi|
|00002440| 65 77 29 20 28 73 65 74 | 66 20 28 6c 61 73 74 2d |ew) (set|f (last-|
|00002450| 6d 6f 75 73 65 2d 70 6f | 73 20 76 69 65 77 29 20 |mouse-po|s view) |
|00002460| 28 76 69 65 77 2d 6d 6f | 75 73 65 2d 70 6f 73 69 |(view-mo|use-posi|
|00002470| 74 69 6f 6e 20 6e 69 6c | 29 29 29 0d 20 20 20 20 |tion nil|))). |
|00002480| 20 20 20 20 20 20 28 69 | 6e 76 61 6c 69 64 61 74 | (i|nvalidat|
|00002490| 65 2d 76 69 65 77 20 76 | 69 65 77 29 0d 20 20 20 |e-view v|iew). |
|000024a0| 20 20 20 29 20 29 0d 20 | 20 20 20 28 77 69 6e 64 | ) ). | (wind|
|000024b0| 6f 77 73 20 3a 63 6c 61 | 73 73 20 27 6e 75 6d 62 |ows :cla|ss 'numb|
|000024c0| 2d 6f 2d 72 61 6d 61 20 | 3a 69 6e 63 6c 75 64 65 |-o-rama |:include|
|000024d0| 2d 77 69 6e 64 6f 69 64 | 73 20 74 29 0d 29 20 29 |-windoid|s t).) )|
|000024e0| 0d 3b 3b 3b 3b 54 6f 6f | 20 62 61 64 20 77 69 6e |.;;;;Too| bad win|
|000024f0| 64 6f 69 64 73 20 64 6f | 6e 27 74 20 67 65 74 20 |doids do|n't get |
|00002500| 61 20 63 72 61 63 6b 20 | 61 74 20 77 69 6e 64 6f |a crack |at windo|
|00002510| 77 2d 6e 75 6c 6c 2d 65 | 76 65 6e 74 2d 68 61 6e |w-null-e|vent-han|
|00002520| 64 6c 65 72 2e 2e 2e 0d | 0d 23 7c 0d 0d 28 64 65 |dler....|.#|..(de|
|00002530| 66 63 6c 61 73 73 20 62 | 6f 78 65 64 2d 73 74 61 |fclass b|oxed-sta|
|00002540| 74 69 63 2d 74 65 78 74 | 2d 64 69 61 6c 6f 67 2d |tic-text|-dialog-|
|00002550| 69 74 65 6d 20 28 73 74 | 61 74 69 63 2d 74 65 78 |item (st|atic-tex|
|00002560| 74 2d 64 69 61 6c 6f 67 | 2d 69 74 65 6d 29 20 28 |t-dialog|-item) (|
|00002570| 29 29 0d 0d 28 64 65 66 | 6d 65 74 68 6f 64 20 76 |))..(def|method v|
|00002580| 69 65 77 2d 64 72 61 77 | 2d 63 6f 6e 74 65 6e 74 |iew-draw|-content|
|00002590| 73 20 3a 61 66 74 65 72 | 20 28 28 76 69 65 77 20 |s :after| ((view |
|000025a0| 62 6f 78 65 64 2d 73 74 | 61 74 69 63 2d 74 65 78 |boxed-st|atic-tex|
|000025b0| 74 2d 64 69 61 6c 6f 67 | 2d 69 74 65 6d 29 29 0d |t-dialog|-item)).|
|000025c0| 20 20 28 6c 65 74 2a 20 | 28 28 74 6f 70 6c 65 66 | (let* |((toplef|
|000025d0| 74 20 28 76 69 65 77 2d | 70 6f 73 69 74 69 6f 6e |t (view-|position|
|000025e0| 20 76 69 65 77 29 29 0d | 20 20 20 20 20 20 20 20 | view)).| |
|000025f0| 20 28 62 6f 74 74 6f 6d | 72 69 67 68 74 20 28 61 | (bottom|right (a|
|00002600| 64 64 2d 70 6f 69 6e 74 | 73 20 74 6f 70 6c 65 66 |dd-point|s toplef|
|00002610| 74 20 28 76 69 65 77 2d | 73 69 7a 65 20 76 69 65 |t (view-|size vie|
|00002620| 77 29 29 29 0d 20 20 20 | 20 20 20 20 20 29 0d 20 |w))). | ). |
|00002630| 20 20 20 28 72 6c 65 74 | 20 28 28 72 65 63 74 20 | (rlet| ((rect |
|00002640| 3a 72 65 63 74 20 3a 74 | 6f 70 6c 65 66 74 20 74 |:rect :t|opleft t|
|00002650| 6f 70 6c 65 66 74 20 3a | 62 6f 74 74 6f 6d 72 69 |opleft :|bottomri|
|00002660| 67 68 74 20 62 6f 74 74 | 6f 6d 72 69 67 68 74 29 |ght bott|omright)|
|00002670| 29 0d 20 20 20 20 20 20 | 28 23 5f 49 6e 73 65 74 |). |(#_Inset|
|00002680| 52 65 63 74 20 72 65 63 | 74 20 2d 32 20 2d 32 29 |Rect rec|t -2 -2)|
|00002690| 0d 20 20 20 20 20 20 28 | 23 5f 46 72 61 6d 65 52 |. (|#_FrameR|
|000026a0| 65 63 74 20 72 65 63 74 | 29 0d 29 20 29 20 29 0d |ect rect|).) ) ).|
|000026b0| 0d 28 6d 61 6b 65 2d 69 | 6e 73 74 61 6e 63 65 20 |.(make-i|nstance |
|000026c0| 27 77 69 6e 64 6f 77 0d | 20 20 3a 76 69 65 77 2d |'window.| :view-|
|000026d0| 73 75 62 76 69 65 77 73 | 0d 20 20 28 6c 69 73 74 |subviews|. (list|
|000026e0| 0d 20 20 20 20 28 6d 61 | 6b 65 2d 69 6e 73 74 61 |. (ma|ke-insta|
|000026f0| 6e 63 65 20 27 62 6f 78 | 65 64 2d 73 74 61 74 69 |nce 'box|ed-stati|
|00002700| 63 2d 74 65 78 74 2d 64 | 69 61 6c 6f 67 2d 69 74 |c-text-d|ialog-it|
|00002710| 65 6d 0d 20 20 20 20 20 | 20 3a 64 69 61 6c 6f 67 |em. | :dialog|
|00002720| 2d 69 74 65 6d 2d 74 65 | 78 74 20 22 57 68 65 72 |-item-te|xt "Wher|
|00002730| 65 20 41 6d 20 49 3f 22 | 0d 20 20 20 20 20 20 3a |e Am I?"|. :|
|00002740| 76 69 65 77 2d 66 6f 6e | 74 20 27 28 22 4d 6f 6e |view-fon|t '("Mon|
|00002750| 61 63 6f 22 20 31 34 29 | 0d 20 20 20 20 20 20 3a |aco" 14)|. :|
|00002760| 76 69 65 77 2d 70 6f 73 | 69 74 69 6f 6e 20 28 6d |view-pos|ition (m|
|00002770| 61 6b 65 2d 70 6f 69 6e | 74 0d 20 20 20 20 20 20 |ake-poin|t. |
|00002780| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002790| 20 28 70 72 69 6e 74 0d | 20 20 20 20 20 20 20 20 | (print.| |
|000027a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000027b0| 20 28 72 61 6e 64 6f 6d | 0d 20 20 20 20 20 20 20 | (random|. |
|000027c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000027d0| 20 20 20 20 28 2d 20 28 | 70 6f 69 6e 74 2d 68 20 | (- (|point-h |
|000027e0| 2a 77 69 6e 64 6f 77 2d | 64 65 66 61 75 6c 74 2d |*window-|default-|
|000027f0| 73 69 7a 65 2a 29 0d 20 | 20 20 20 20 20 20 20 20 |size*). | |
|00002800| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002810| 20 20 20 20 20 28 73 74 | 72 69 6e 67 2d 77 69 64 | (st|ring-wid|
|00002820| 74 68 20 22 57 68 65 72 | 65 20 41 6d 20 49 3f 22 |th "Wher|e Am I?"|
|00002830| 20 27 28 22 4d 6f 6e 61 | 63 6f 22 20 31 34 29 29 | '("Mona|co" 14))|
|00002840| 0d 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |. | |
|00002850| 20 20 20 20 20 20 20 20 | 29 20 29 20 29 0d 20 20 | |) ) ). |
|00002860| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002870| 20 20 20 20 20 28 70 72 | 69 6e 74 0d 20 20 20 20 | (pr|int. |
|00002880| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002890| 20 20 20 20 20 28 72 61 | 6e 64 6f 6d 0d 20 20 20 | (ra|ndom. |
|000028a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000028b0| 20 20 20 20 20 20 20 20 | 28 2d 20 28 70 6f 69 6e | |(- (poin|
|000028c0| 74 2d 76 20 2a 77 69 6e | 64 6f 77 2d 64 65 66 61 |t-v *win|dow-defa|
|000028d0| 75 6c 74 2d 73 69 7a 65 | 2a 29 0d 20 20 20 20 20 |ult-size|*). |
|000028e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000028f0| 20 20 20 20 20 20 20 20 | 20 28 66 6f 6e 74 2d 6c | | (font-l|
|00002900| 69 6e 65 2d 68 65 69 67 | 68 74 20 27 28 22 4d 6f |ine-heig|ht '("Mo|
|00002910| 6e 61 63 6f 22 20 31 34 | 29 29 0d 20 20 20 20 20 |naco" 14|)). |
|00002920| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00002930| 20 29 20 29 20 29 20 29 | 0d 29 20 29 20 29 0d 0d | ) ) ) )|.) ) )..|
|00002940| 28 6d 61 6b 65 2d 69 6e | 73 74 61 6e 63 65 20 27 |(make-in|stance '|
|00002950| 6e 75 6d 62 2d 6f 2d 72 | 61 6d 61 29 0d 0d 7c 23 |numb-o-r|ama)..|#|
|00002960| 0d 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002970| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002980| 00 00 01 00 00 00 01 82 | 00 00 00 82 00 00 00 46 |........|.......F|
|00002990| 20 4f 63 74 20 32 31 20 | 30 39 3a 31 30 3a 35 39 | Oct 21 |09:10:59|
|000029a0| 20 31 39 39 30 0d 52 65 | 74 75 72 6e 2d 50 61 74 | 1990.Re|turn-Pat|
|000029b0| 10 6e 75 6d 62 2d 6f 2d | 72 61 6d 61 2e 6c 69 73 |.numb-o-|rama.lis|
|000029c0| 70 6d 02 00 00 00 54 45 | 58 54 43 43 4c 32 01 00 |pm....TE|XTCCL2..|
|000029d0| 00 00 54 45 58 54 43 43 | 4c 32 01 00 00 78 00 00 |..TEXTCC|L2...x..|
|000029e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000029f0| 00 00 a5 d7 f9 d9 00 00 | 28 e1 00 00 01 c8 6f 74 |........|(.....ot|
|00002a00| 6c 65 2e 69 6c 73 2e 6e | 77 75 2e 65 64 75 20 28 |le.ils.n|wu.edu (|
|00002a10| 34 2e 30 2f 53 4d 49 2d | 34 2e 30 29 09 69 64 20 |4.0/SMI-|4.0).id |
|00002a20| 41 41 32 35 35 37 33 3b | 20 53 75 6e 2c 20 32 31 |AA25573;| Sun, 21|
|00002a30| 20 4f 63 74 20 39 30 20 | 30 39 3a 33 38 3a 35 39 | Oct 90 |09:38:59|
|00002a40| 20 43 44 54 0d 46 72 6f | 6d 3a 20 64 37 6a 61 63 | CDT.Fro|m: d7jac|
|00002a50| 6f 62 40 64 74 65 6b 2e | 63 68 61 6c 6d 65 72 73 |ob@dtek.|chalmers|
|00002a60| 2e 73 65 0d 52 65 63 65 | 69 76 65 64 3a 20 42 79 |.se.Rece|ived: By|
|00002a70| 20 68 61 63 6b 65 31 36 | 2e 64 74 65 6b 2e 63 68 | hacke16|.dtek.ch|
|00002a80| 00 00 00 48 00 09 4d 6f | 6e 61 63 6f 00 00 00 00 |...H..Mo|naco....|
|00002a90| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002aa0| 00 00 00 00 00 00 00 06 | 00 08 00 29 00 03 01 2a |........|...)...*|
|00002ab0| 01 fa 00 29 00 03 01 2a | 01 fa 00 00 00 00 00 00 |...)...*|........|
|00002ac0| 00 00 00 00 00 00 00 00 | 00 00 01 00 00 00 00 32 |........|.......2|
|00002ad0| 00 03 00 04 09 00 00 04 | 09 01 00 00 09 00 01 00 |........|........|
|00002ae0| 00 00 02 00 02 ab 01 00 | 02 b6 02 00 03 89 01 00 |........|........|
|00002af0| 03 94 03 00 03 eb 01 00 | 03 ec 02 00 04 1f 01 00 |........|........|
|00002b00| 04 2a 00 00 01 00 00 00 | 01 82 00 00 00 82 00 00 |.*......|........|
|00002b10| 00 46 00 a1 b5 50 08 d2 | 00 00 00 1c 00 46 00 01 |.F...P..|.....F..|
|00002b20| 46 52 45 44 00 00 00 12 | 4d 50 53 52 00 00 00 1e |FRED....|MPSR....|
|00002b30| 00 02 ff ff 00 00 00 4c | 00 b6 dd 34 03 ed ff ff |.......L|...4....|
|00002b40| 00 00 00 00 00 b6 df 80 | 00 00 00 00 00 00 00 00 |........|........|
|00002b50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002b60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002b70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+